Micron Document
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
| SparkN0de-git | SparkN0de |
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------


Commit 730ab283655a90e8987b33ca89f7c5953d812721


Parents : d6351c5
Author : Sudo-Ivan <ivan@quad4.io>
Signature : Signature validation error
Date : 2026-01-16T09:21:43-06:00

Update

Changes

2 files changed, 15 insertions(+), 6 deletions(-)

M CHANGELOG.md +10 -4
M README.md +5 -2

Diff

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 3c15b689..d4ea1d75 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -2,7 +2,7 @@
All notable changes to this project will be documented in this file.
-## [4.1.0] - 2026-01-14
+## [4.1.0] - 2026-01-16
### New Features
@@ -12,13 +12,17 @@ All notable changes to this project will be documented in this file.
- **Failure Manifold Mapping**: Identifies "Failure Manifolds" across the vertical stack, including RNS identity failures, LXMF storage issues, and interface offline states.
- **RNS Auto-Configuration**:
- Automatic creation and repair of the Reticulum configuration file (`~/.reticulum/config`) if it is missing, invalid, or corrupt.
-- **Improved Installation**:
- - Added support and documentation for installing via **Pre-built Wheels (.whl)** from releases, which bundle the built frontend for a simpler setup experience.
+- **Expanded Security Pipeline**:
+ - Integrated **Trivy** for both filesystem (codebase) and container image scanning.
+ - Consolidated security scans into a unified `scan.yml` workflow for better visibility.
+ - Updated container workflows to include fail-fast filesystem checks.
- **Network Visualiser Optimization**:
- Implemented **AbortController** support to cancel pending API requests on component unmount.
- Added high-performance batch fetching for path tables and announces (up to 1000 items per request).
- **Announce Pagination**:
- Added backend and database-level pagination for announces to improve UI responsiveness in large networks.
+- **Improved Installation**:
+ - Added support and documentation for installing via **Pre-built Wheels (.whl)** from releases, which bundle the built frontend for a simpler setup experience.
### Improvements
@@ -28,6 +32,7 @@ All notable changes to this project will be documented in this file.
- Refactored `IdentityContext` teardown to ensure all managers are properly nullified and callbacks cleared, preventing memory leaks and reference cycles.
- Added client list cleanup in `WebAudioBridge` when calls end.
- **UI/UX**:
+ - Enhanced **LXMF link handling** with better rendering logic for `lxmf://` and `rns://` URIs.
- Fixed a critical hang in the **Startup Wizard** where "Finish" or "Skip" buttons could become unresponsive.
- Improved UI navigation safety by automatically closing the tutorial modal when navigating away.
- Refined `MarkdownRenderer` regex patterns to prevent empty bold/italic tags and improved matching for single delimiters.
@@ -37,7 +42,8 @@ All notable changes to this project will be documented in this file.
- Refactored telemetry data packing for more efficient location transmission.
- Updated dependencies including **Electron Forge (7.11.1)**, **Prettier (3.8.0)**, and ESLint plugins for better stability and formatting.
- **Testing**:
- - Significant expansion of the test suite with **Property-Based Testing** (using `hypothesis`) to ensure robustness of the diagnostic engine, identity restoration, and markdown renderer.
+ - **Frontend UI Test Suite Expansion**: Added comprehensive Vitest suites for all diagnostic and utility tools (Ping, Trace, Probe, RNode Flasher, Micron Editor, etc.).
+ - **Property-Based Testing**: Significant expansion with `hypothesis` to ensure robustness of the diagnostic engine, identity restoration, and markdown renderer.
- Added automated verification for Python version and legacy kernel compatibility diagnostics.
- Configured temporary log directory management for tests to improve portability.

diff --git a/README.md b/README.md
index 8981f983..8bb5e84a 100644
--- a/README.md
+++ b/README.md
@@ -283,11 +283,14 @@ We use [Task](https://taskfile.dev/) for automation.
- [ASAR Integrity](https://www.electronjs.org/docs/latest/tutorial/asar-integrity) (Stable as of Electron 39)
- Built-in automatic integrity checks on all files (frontend and backend)
- HTTPS by default (automated locally generated certs)
+
+* **Layered CSP Protection**: 3-layer Content Security Policy (Backend, Electron Session, and Loading Screen) to prevent XSS and unauthorized resource loading.
+
- Redundant CORS protection (loading.html, python backend server, electron main.js)
- Updated dependencies and daily scanning (OSV)
-- Container image scanning (Trivy)
+- **Comprehensive Scanning Pipeline**: Integrated [Trivy](https://github.com/aquasecurity/trivy) for filesystem and container image scanning, alongside [OSV-Scanner](https://github.com/google/osv-scanner) for vulnerability tracking.
- SBOM for dependency observability and tracking
-- Extensive testing and fuzzing.
+- Extensive testing and fuzzing (Property-based testing with Hypothesis).
- Rootless docker images
- Pinned actions and container images (supply chain security and deterministic builds)


──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────